#ifndef CONSTANTES_H_INCLUDED
#define CONSTANTES_H_INCLUDED

#define TAILLE_BLOC 34
#define TAILLE_ZONE 15
#define UNITS_COUNT_MAX 20    //nombre d'unités différentes utilisables dans une partie
#define PV_MAX 10.0
#define ARMY_LENGTH_MAX 15
#define COUT_MAX 10           //indique que le terrain est infranchissable

typedef enum {plaine, montagne, route, foret, mer, base1, base2} type_land;
typedef enum {foot=1,tires,tread,plane,boat} type_support;
typedef enum {soldat=1, tank, helico} type_unit;
typedef enum {neutral,red,blue} color;

typedef struct {
    type_land name;
    int defense;
    int costs[5];  //coût_foot, coût_tires, coût_tread, etc...

    int occupied;  //booléen
    int proprio;   //booléen
    int available; //booléen
    //int x;
    //int y;
} land;

typedef struct {
    char *nom;
	type_unit name;
    type_support support;
    int gas_max;
    int ammo_max;
    int price;
    int deplacement_max;
    int fire_power[5];  //puissance contre foot, puissance contre tires, etc...

	color couleur;
	double PV;
	int gas;
	int ammo;
	int has_moved;  //booléen
	int x;
	int y;
} unit;

typedef land map[15][15];
typedef unit army[ARMY_LENGTH_MAX];         //army = tableau d'unités

typedef struct {
    char name[20];
    color couleur;
    army armee; // Tableau qui contient les unités du joueur
} player;

#endif // CONSTANTES_H_INCLUDED
